import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import './plugins/element.js'

// 引入样式
import "./assets/css/global.css";
// 字体图标
import "./assets/fonts/iconfont.css";
// 引入组件
import TreeTable from 'vue-table-with-tree-grid';
// 先执行命令安装再导入编辑器
import VueQuillEditor from 'vue-quill-editor';
// 引入编辑器样式
import 'quill/dist/quill.core.css';
import 'quill/dist/quill.snow.css';
import 'quill/dist/quill.bubble.css';
Vue.use(VueQuillEditor)

Vue.component('tree-table', TreeTable)

import axios from 'axios';

Vue.config.productionTip = false

// 日期时间全局过滤器
Vue.filter('dateFormat', function(originVal) {
    const dt = new Date(originVal)
    const y = dt.getFullYear()

    // padStart() 二位数字符串，不足用0代替
    const m = (dt.getMonth() + 1).toString().padStart(2, '0')
    const d = (dt.getDate() + '').padStart(2, '0')
    const hh = (dt.getHours() + '').padStart(2, '0')
    const mm = (dt.getMinutes() + '').padStart(2, '0')
    const ss = (dt.getSeconds() + '').padStart(2, '0')
    return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
})

new Vue({
    router,
    store,
    render: h => h(App),
    beforeMount() {
        // 请求的根路径
        axios.defaults.baseURL = "http://127.0.0.1:8888/api/private/v1/"

        // 请求拦截器添加令牌，每一次发请求之前都需要判断是否有权限
        axios.interceptors.request.use(config => {
            // 请求头添加一个字段
            config.headers.Authorization = sessionStorage.getItem("token")
            return config
        })
        Vue.prototype.$http = axios
    }
}).$mount('#app')

/*
  1、如何关闭eslint？
    找到.eslintrc.js文件，把里面所有内容删除即可，不要删除文件夹！！
    还是不行的话，在跟目录下创建vue.config.js文件，
    并配置如下代码：module.exports = {lintOnSave: false}

  2、登录业务的相关技术点：
    1)、如果前端与后端服务器存在跨域问题，那么可以使用token
    2)、如果前端与后端服务器不存在跨域问题，那么可以使用cookie或session

  3、git相关命令：
    1)、git status  查看当前工作区
    2)、git checkout -b "分支名"  创建并切换分支
    3)、git checkout "分支名"  切换分支
    4)、git branch  查看当前所在分支
    5)、git merge "分支名"  合并分支
    6)、git push  把代码推送到码云
    6)、git push -u origin "分支名"  把本地分支推送到码云
      步骤：每次写代码实现一个模块前，需要使用git checkout -b "分支名"  在本地创建并切换分支
      并使用git push -u origin "分支名"  把本地分支推送到码云，功能实现后，使用git add .和git commit -m "说明"
      提交代码到本地，然后git checkout master  切换到主分支，在主分支下合并代码git merge master，
      最后把本地主分支的代码提交到码云主分支即可git push 

  4、.prettierrc文件 解决eslint要求与文件格式化冲突
    "semi":false,   移除末尾的分号
    "singleQuote":true   字符串使用单引号

  5、级联选择器的高度撑满全屏？
    加css样式即可解决：
      .el-cascader-menu {
          height: 300px !important;
      }

*/